Strong Termination of Logic Programs

نویسنده

  • Marc Bezem
چکیده

We study a powerful class of logic programs which terminate for a large class of goals. Both classes are characterized in a natural way in terms of mappings from variable-free atoms to natural numbers. Based on this idea we present a technique which improves the termination behaviour and allows a more multidirectional use of Prolog programs. The class of logic programs is shown to be strong enough to compute every total recursive function. The class of goals considerably extends the variable-free ones.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Fast offline partial evaluation of logic programs

One of the most important challenges in partial evaluation is the design of automatic methods for ensuring the termination of the process. In this work, we introduce sufficient conditions for the strong (i.e., independent of a computation rule) termination and quasi-termination of logic programs which rely on the construction of size-change graphs. We then present a fast binding-time analysis t...

متن کامل

On Termination of Meta-Programs

The termmeta-programming refers to the ability of writing programs that have other programs as data and exploit their semantics [4]. The choice of logic programming as a basis for meta-programming offers a number of practical and theoretical advantages. One of them is the possibility of tackling critical foundation problems of meta-programming within a framework with a strong theoretical basis....

متن کامل

Fast and Accurate Strong Termination Analysis with an Application to Partial Evaluation

A logic program strongly terminates if it terminates for any selection rule. Clearly, considering a particular selection rule—like Prolog’s leftmost selection rule—allows one to prove more goals terminating. In contrast, a strong termination analysis gives valuable information for those applications in which the selection rule cannot be fixed in advance (e.g., partial evaluation, dynamic select...

متن کامل

Automated termination analysis for logic programs with cut

Termination is an important and well-studied property for logic programs. However, almost all approaches for automated termination analysis focus on definite logic programs, whereas real-world Prolog programs typically use the cut operator. We introduce a novel pre-processing method which automatically transforms Prolog programs into logic programs without cuts, where termination of the cut-fre...

متن کامل

Termination Analysis of Logic Programs with Cut Using Dependency Triples∗

In very recent work, we introduced a non-termination preserving transformation from logic programs with cut to definite logic programs. In this paper we extend the transformation such that logic programs with cut are transformed into dependency triple problems instead of definite logic programs. By the implementation of our new method and extensive experiments, we show that the power of automat...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • J. Log. Program.

دوره 15  شماره 

صفحات  -

تاریخ انتشار 1993